package com.fnfn.sdk.api.common;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.List;

public class NumUtil {

    public static List<String> stringToLists(String strs) {
        String str[] = strs.split(",");
        return Arrays.asList(str);
    }
    
    /**
     * 只能是数字
     * 
     * @param text
     * @return
     */
    public static boolean isNumeric(String str){
        for (int i = str.length();--i>=0;){  
            if (!Character.isDigit(str.charAt(i))){
                return false;
            }
        }
        return true;
    }

    /**
     * 只能是数字、字母、中文
     * 
     * @param text
     * @return
     */
    public static boolean stringInput(String text) {
        char ch = text.charAt(text.length() - 1);
        if (!(ch >= '0' && ch <= '9' || ch >= 'A' && ch <= 'z' || ch >= '\u4E00' && ch <= '\u9FA5')) {
            return true;
        }
        return false;
    }

    /**
     * 只能是数字和字母
     * 
     * @param text
     * @return
     */
    public static boolean stringInputToString(String text) {
        char ch = text.charAt(text.length() - 1);
        if (!(ch >= '0' && ch <= '9' || ch >= 'A' && ch <= 'z')) {
            return true;
        }
        return false;
    }

    /**
     * 只能是数字
     * 
     * @param text
     * @return
     */
    public static boolean stringInputToNum(String text) {
        char ch = text.charAt(text.length() - 1);
        if (!(ch >= '0' && ch <= '9')) {
            return true;
        }
        return false;
    }

    /**
     * 只能是字母
     * 
     * @param text
     * @return
     */
    public static boolean stringInputToAbc(String text) {
        char ch = text.charAt(text.length() - 1);
        if (!(ch >= 'A' && ch <= 'z')) {
            return true;
        }
        return false;
    }

    public static List<String> stringToArray(String strs) {
        String str[] = strs.split(",");
        // String[] arr = str.split("");
        for (int i = 0; i < str.length; i++) { // String数组，不过arr[0]为空
            System.out.println(str[i]); // 空 1 2 3 a b c
        }
        return Arrays.asList(str);
    }

    // 对象转换为List集合
    public static boolean isValidDate(String str) {
        boolean convertSuccess = true;
        // 指定日期格式为四位年/两位月份/两位日期，注意yyyy/MM/dd区分大小写；
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
        try {
            // 设置lenient为false. 否则SimpleDateFormat会比较宽松地验证日期，比如2007/02/29会被接受，并转换成2007/03/01
            format.setLenient(false);
            format.parse(str);
        } catch (ParseException e) {
            // e.printStackTrace();
            // 如果throw java.text.ParseException或者NullPointerException，就说明格式不对
            convertSuccess = false;
        }
        return convertSuccess;
    }

}
